class DrawingController:
	
	def __init__(self, drawing_area):
		self.all_shapes = [] # all the shapes to br draw
		self.drawing_area = drawing_area
		
	def draw(self, spec):
		""" Take a specification Spec to know which shape to add to self.all_shapes"""
		if spec.shape == "Line":
			self.__draw_line(spec)
		elif spec.shape == "Circle":
			self.__draw_circle(spec)
		elif spec.shape == "Polygon":
			self.__draw_polygon(spec)
		
	
	def __draw_line(self, spec):
		""" Adds a line to all_shapes and repaint everything """
		raise Exception("Not implemented yet")
	
	def __draw_circle(self, spec):
		""" Adds a circle to all_shapes and repaint everything """
		raise Exception("Not implemented yet")
	
	def __draw_polygon(self, spec):
		""" Adds a polygon to all_shapes and repaint everything """
		raise Exception("Not implemented yet")
	
	
	def clear_all(self):
		""" Clear the dwaing_area """
		self.all_shapes = []
		self.repaint()
		
	def repaint(self):
		""" Repaint all_shapes in drawing_area """
		raise Exception("Not implemented yet")
